package com.kws.tool.service;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.kws.tool.dto.*;
import com.kws.tool.entity.PolicyEntity;
import com.kws.tool.vo.LocationVo;
import com.kws.tool.vo.PolicyVo;
import com.kws.tool.vo.StandardVo;
import com.kws.tool.vo.ToolTypeVo;

import java.util.List;

/**
 * @author : zhangbenting
 * @date : 2024/10/22 10:49
 * @Version: 1.0
 */
public interface PolicyService extends IService<PolicyEntity> {

    Page<PolicyVo> getPolicyList(PolicyDto policyDto);

    Page<StandardVo> getStandardList(StandardDto standardDto);

    List<LocationVo> getLocationList();

    LevelAndOrganDto getPolicyLevelAndOrgan();

    boolean addPolicyOrStandardCollect(CollectDto collectDto);

    boolean removePolicyOrStandardCollect(CollectDto collectDto);

    boolean addPolicyOrStandardBrowse(CollectDto collectDto);

    Page<PolicyEntity> queryPolicyMaintenancePage(QueryPolicyMaintenanceRq rq);

    boolean createPolicyMaintenance(CreatePolicyMaintenanceRq rq);

    PolicyEntity queryPolicyMaintenanceById(Long id);

    boolean updatePolicyMaintenance(UpdatePolicyMaintenanceRq rq);

    boolean deletePolicyMaintenanceById(Long id);

    List<ToolTypeVo> getStandardToolType();

    Page<StandardVo> getStandardCollectList(StandardDto standardDto);

    Page<PolicyVo> getPolicyCollectList(PolicyDto policyDto);
}
